package br.ucb.tcc.utils;

import java.util.ArrayList;
import java.util.List;

/**
 * 
 * Classe para manipulacoes do sistema.
 * 
 * @author italoricci
 * 
 */
public class StringUtil {

	/**
	 * @param texto
	 * @param identificador
	 * @return
	 */
	public static List<String> retornarNomes(String texto, String identificador) {
		List<String> nickNames = new ArrayList<String>();
		String[] arrayValores = texto.split(" ");
		for (String string : arrayValores) {
			if (string.startsWith(identificador)) {
				String separadorComum = retornarSeparadoresComuns(string);
				if (separadorComum != null && !separadorComum.isEmpty()) {
					nickNames.add(string.substring(1, string.lastIndexOf(separadorComum)));
				} else {
					nickNames.add(string.substring(1, string.length()));
				}
			}
		}
		return nickNames;
	}

	/**
	 * @param texto
	 * @param identificador
	 * @return
	 */
	public static String retornarNomePrincipal(String texto,
			String identificador) {
		List<String> lista = retornarNomes(texto, identificador);
		if (lista != null && !lista.isEmpty()) {
			return lista.get(0);
		}
		return "";
	}
	

	/**
	 * @param text
	 * @return
	 */
	private static String retornarSeparadoresComuns(String text) {
		if (text.endsWith(",")) {
			return ",";
		} else if (text.endsWith(";")) {
			return ";";
		} else if (text.endsWith(".")) {
			return ".";
		} else if (text.endsWith(")")) {
			return ")";
		} else if (text.endsWith(":")) {
			return ":";
		}
		return "";
	}

	/**
	 * @param string
	 * @return
	 */
	public static boolean isStringVazia(String string) {
		if (string != null && !string.isEmpty()) {
			return false;
		}
		return true;
	}
	


}
